В C++11 и новее появились атрибуты — механизм, о котором многие забывают. Атрибуты позволяют передавать дополнительную информацию компилятору, не меняя семантику кода.
[[nodiscard]] int getValue() { return 42; }
void test() { getValue(); // Предупреждение: результат функции не используется }
class [[deprecated("Используйте новый API")]] OldClass {};
// C++20: говорит компилятору, что код с [[likely]] будет выполняться чаще void process(int* data) { if (data) [[likely]] { process_data(data); } else [[unlikely]] { handle_null(); } }
Другие полезные атрибуты: [[maybe_unused]], [[fallthrough]], [[no_unique_address]] (C++20). Они делают код понятнее и помогают избежать ошибок😸
В C++11 и новее появились атрибуты — механизм, о котором многие забывают. Атрибуты позволяют передавать дополнительную информацию компилятору, не меняя семантику кода.
[[nodiscard]] int getValue() { return 42; }
void test() { getValue(); // Предупреждение: результат функции не используется }
class [[deprecated("Используйте новый API")]] OldClass {};
// C++20: говорит компилятору, что код с [[likely]] будет выполняться чаще void process(int* data) { if (data) [[likely]] { process_data(data); } else [[unlikely]] { handle_null(); } }
Другие полезные атрибуты: [[maybe_unused]], [[fallthrough]], [[no_unique_address]] (C++20). Они делают код понятнее и помогают избежать ошибок😸
That growth environment will include rising inflation and interest rates. Those upward shifts naturally accompany healthy growth periods as the demand for resources, products and services rise. Importantly, the Federal Reserve has laid out the rationale for not interfering with that natural growth transition.It's not exactly a fad, but there is a widespread willingness to pay up for a growth story. Classic fundamental analysis takes a back seat. Even negative earnings are ignored. In fact, positive earnings seem to be a limiting measure, producing the question, "Is that all you've got?" The preference is a vision of untold riches when the exciting story plays out as expected.
Newly uncovered hack campaign in Telegram
The campaign, which security firm Check Point has named Rampant Kitten, comprises two main components, one for Windows and the other for Android. Rampant Kitten’s objective is to steal Telegram messages, passwords, and two-factor authentication codes sent by SMS and then also take screenshots and record sounds within earshot of an infected phone, the researchers said in a post published on Friday.
Библиотека C C разработчика | cpp boost qt from nl